﻿#ifndef FORMTESTINFO_H
#define FORMTESTINFO_H

#include <QWidget>
#include <QStringListModel>

namespace Ui {
class FormTestInfo;
}

class FormTestInfo : public QWidget
{
    Q_OBJECT

public:
    explicit FormTestInfo(QWidget *parent = nullptr);
    ~FormTestInfo();

    // 把值置0
    void clear();
    // 设置仿真时间间隔
    void setSimuInterval(const int simuInterval);

    // 设置当前项目
    void setItemName(const QString& itemName);
    // 设置理论运行时间
    void setTheroyRunTime(const int& theroyRunTime);

    // 更新进度
    void updateProgress(const int& simuPoints, const qint64& runTime);
    // 进度完成
    void finishProgress(const int& simuPoints, const qint64& runTime);

    // 更新训练考试状态信息
    void updateTrainStart();
    void updateTraining();
    void updateTrainEnd();

    // 更新测试过程信息
    void updateStepInfo(const QString& stepCode);

private:
    void initUI();
    void init();

private:
    Ui::FormTestInfo *ui;

    // 训练考试指示灯
    QPixmap m_grayPixmap;
    QPixmap m_greenPixmap;

    // 训练信息列表
    QStringListModel m_stepInfoModel;

private:
    // 仿真时间间隔: ms
    int m_simuInterval;


public slots:
};

#endif // FORMTESTINFO_H
